package com.tianqu.tms.dao;

import com.tianqu.tms.core.exception.TmsDaoException;
import com.tianqu.tms.dto.MarketCarInfoDto;
import com.tianqu.tms.dto.TransferAcceptedInfoDto;
import com.tianqu.tms.dto.TransferPersonalCarInfoDto;

/**
 * 
 * 非库存车辆基本信息
 * 
 * @author Administrator
 * 
 */
public interface TransferPersonalCarInfoDao {

	/**
	 * 
	 * 插入一条数据
	 */
	public void insertCarBaseInfoAtAssess(TransferPersonalCarInfoDto dto)
			throws TmsDaoException;
	/***
	 * 更新车辆信息
	 * @param dto
	 * @throws TmsDaoException
	 */
	public void updatePersonInfobySerial(TransferPersonalCarInfoDto dto)
			throws TmsDaoException;
	/**
	 * 
	 * 车辆评估更新
	 */
	public void updateCarBaseInfoAtAssess(TransferPersonalCarInfoDto dto)
			throws TmsDaoException;
	/**
	 *待办
	 */
	public TransferPersonalCarInfoDto getPersonalCarInfoBySerial(String serial) throws TmsDaoException;
	
	public TransferPersonalCarInfoDto getPersonalCarInfoByVin(String vin) throws TmsDaoException;
	
	public TransferPersonalCarInfoDto getPersonalCarInfoByLicensePlate(String licensePlate) throws TmsDaoException;
	/**
	 * 删除
	 */
	public void deletePersonalInfoBySerial(String serial) throws TmsDaoException;
	/**
	 * 更新基本信息
	 * @param dto
	 * @throws TmsDaoException
	 */
	public void updateCarBaseInfo(TransferPersonalCarInfoDto dto) throws TmsDaoException;
	/**
	 * 更新车辆状态
	 * @param dto
	 * @throws TmsDaoException
	 */
	public void updateCarStatus(TransferPersonalCarInfoDto dto) throws TmsDaoException;
	
	public void updateTransferPsersonalStatusByLicensePlate(int status,String licensePlate) throws TmsDaoException;
	
	public void updateLicenseBySerial(TransferPersonalCarInfoDto dto) throws TmsDaoException;
	
	public void updateCarNameS(TransferPersonalCarInfoDto dto)throws TmsDaoException;
	
	public void updateMarketInfoByLicensePlate(TransferPersonalCarInfoDto dto)throws TmsDaoException;

	public int getTransferPersonalCarInfo(String serial) throws TmsDaoException;
	
	public void insertCarBaseInfoAtWX(TransferPersonalCarInfoDto dto) throws TmsDaoException ;
}
